#!/usr/bin/wish
#______________________________________
# Fichier  : <+FICHIER+>
# Auteur   : <+MON_NOM+>
# Date     : <+DATE+>
# Fonction : <+FONCTION+>
#______________________________________

set Socket [socket localhost 5000]
fconfigure $Socket -buffering line

puts "Client tcl"
puts "Nom d'utilisateur:"
gets stdin userName
puts -nonewline $Socket $userName
flush $Socket

puts "Nouveau groupe? (y/n)"
gets stdin choix

while { $choix != "y" && $choix !="n" } {
	puts "Veuillez choisir entre (y/n)!:"
	gets stdin choix
}

if { $choix == "y" } {
	puts -nonewline $Socket "CREATE_GROUP"
	flush $Socket
	puts "Nom du groupe:"
	gets stdin groupName
	puts -nonewline $Socket $groupName
	flush $Socket
	gets $Socket response 

	if { $response eq "VALIDE_GROUP" } {
		puts "Le groupe a été créé!"
	} else {
		puts "Le groupe n'a pas été crée!"
	}
} else {
	puts -nonewline $Socket "JOIN_GROUP"
	flush $Socket
	gets $Socket header
	puts $header
	gets $Socket nGroup
	puts -nonewline "Nombre de groupe: " 
	puts $nGroup
	set i 0

	while { $i < $nGroup } {
		gets $Socket response
		puts $response
		incr i
	}
	
	puts "Nom du groupe:"
	gets stdin groupName
	puts -nonewline $Socket $groupName
	flush $Socket
	gets $Socket response

	if { $response eq "GROUP_NAME_INVALIDE" } {
		puts "Le nom du groupe est invalide!"
	} else {
	
		if { $response == "VALIDE_NAME" } {
			
			#On attend récup les info du groupe ( Ne pas l'intégrer à la connexion d'un client, on mettra ce bout de code dans une fonction à part
			gets $Socket infoGroup
			puts $infoGroup

			gets $Socket masterName
			puts -nonewline "Chef de groupe: "
			puts $masterName

			gets $Socket masterId
			puts -nonewline "ID: "
			puts $masterId
	
			gets $Socket nUser

			set j 0
			while { $j < $nUser } {
				puts -nonewline "Utilisateur: "
				gets $Socket user
				puts $user

				puts -nonewline "ID: "
				gets $Socket userId
				puts $userId
				incr j
			}
			puts "Vous êtes à présent en ligne!"
		} else {
			puts "Le nom d'utilisateur est déjà choisi!"
		}
	}
}





